package by.brest.bspc.reporter.jasperreports;

import net.sf.jasperreports.engine.JasperPrint;

import java.net.UnknownHostException;
import java.util.Map;

/**
 * This interface describes the reporters.
 *
 * @date: 10/5/13 1:30 PM
 * @author: frehty
 */
public interface JasperReportsCreator {

    /**
     * This method create xlsx format report with jasper template from mongodb collection.
     *
     * @param sourceFile    template file.
     * @param parametersMap parameters for query.
     * @param xlsxFile      saving xlsx reports.
     * @param mongoUri      mongo uri.
     * @return filled jasperPrint object.
     * @throws UnknownHostException
     */
    public JasperPrint createReport(String sourceFile, Map<String, Object> parametersMap, String xlsxFile, String mongoUri);
}
